kafka-1.2 生产与消费简单实例

1.2 生产与消费简单实例

创建topic

kafka提供了许多实用的脚本工具,存放在$KAFKA_HOME的bin目录下.其中与主题相关的就是kafka-topic.sh脚本.例如.下面创建一个分区数为4,副本为3的主题topic-demon

1
2
3
./kafka-topics.sh --zookeeper localhost:2181 --create --topic topic-demo --replication-factor 3 --partitions 4

Created topic "topic-demo".

--zoopkeer 指定kafka连接的zookeeper服务地址
--topic 指定一个topic主题
--replication-factor 指定副本因子数量
--partition 指定分区数量
--create 表示创建

下面命令展示了刚创建的主题信息

1
2
3
4
5
6
[hadoop@bi-dev152 bin]$ ./kafka-topics.sh --zookeeper localhost:2181 --describe --topic topic-demo
Topic:topic-demo PartitionCount:4 ReplicationFactor:3 Configs:
Topic: topic-demo Partition: 0 Leader: 152 Replicas: 152,153,154 Isr: 152,153,154
Topic: topic-demo Partition: 1 Leader: 153 Replicas: 153,154,152 Isr: 153,154,152
Topic: topic-demo Partition: 2 Leader: 154 Replicas: 154,152,153 Isr: 154,152,153
Topic: topic-demo Partition: 3 Leader: 152 Replicas: 152,154,153 Isr: 152,154,153

上面的命令结果表示 topic-demon 这个主题一共有4个分区,存放在3台Kafka broker服务器节点.3个broker均是ISR集合,没有OSR集合

在任意一台kafka集群内的节点服务器上执行上述命令,会得到完全相同的结果

创建consumer

kafka-console-consumer.sh 在任意一台kafka集群内的节点服务器上可以通过控制台创建一个 consumer 消费者.示例如下

1
[hadoop@bi-dev154 bin]$ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic-demo

--bootstrap-server 指定连接的kafka集群地址
--topic 指定消费者订阅的主题

创建producer

kafka-console-producer.sh 在任意一台kafka集群内的节点服务器上可以通过控制台创建一个 producer 消费者.示例如下

1
[hadoop@bi-dev153 bin]$ ./kafka-console-producer.sh --broker-list localhost:9092 --topic topic-demo

--broker-list 指定连接的kafka集群地址
--topic 指定发小时时的主题
在弹出的shell终端中,输入 hello world!

1
>hello,world!

回到 consumer 的shell终端界面,发现消费到了刚生产的消息:

1
2
[hadoop@bi-dev154 bin]$ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic-demo
hello,world!

本文标题:kafka-1.2 生产与消费简单实例

文章作者:Jesse

发布时间:2021年01月05日 - 17:01

最后更新:2021年01月05日 - 22:01

原始链接:https://jesse.top/2021/01/05/Linux-分布式&消息队列/kafka/1-概念介绍/1.2 生产与消费简单实例/

许可协议: 禁止商业用途 转载请保留原文链接及作者。

坚持原创技术分享,您的支持将鼓励我继续创作!